/*
 *
 *
 *
 */

	.section .data
precision:
	.byte 0x7f, 0x00

	.section .bss
	.lcomm radius, 4
	.lcomm result, 4
	.lcomm trash, 4

	.section .text
	.globl _start

_start:
	nop
	finit
	fldcw precision

	movl $10, radius
	call area

	movl $2, radius
	call area

	movl $120, radius
	call area

	movl $1, %eax
	movl $0, %ebx
	int $0x80

	.type area, @function
area:
	fldpi
	filds radius
	fmul %st(0), %st(0)
	fmulp %st(0), %st(1)
	fstps result
	ret
	
	